package com.maistars.spider.service.domain.rule;

import com.maistars.spider.service.domain.BaseBO;
import com.maistars.spider.service.domain.render.RenderConfig;
import com.maistars.spider.service.domain.task.CrawlerTask;
import lombok.Builder;
import lombok.Data;

import java.util.List;

/**
 * @author dhr
 * @date 2021/1/15 下午9:40
 */
@Builder
@Data
public class PageRule extends BaseBO {

    /**
     * 页面ID
     */
    private Integer pageId;

    /**
     * 所属的爬虫任务
     */
    private CrawlerTask crawlerTask;

    /**
     * 父页面规则
     */
    private PageRule parentRule;

    /**
     * 当前页面级别
     */
    private Integer level;

    /**
     * 页面规则名
     */
    private String ruleName;

    /**
     * 分页规则
     */
    private PageTurnRule pageTurnRule;

    /**
     * 页面类型：
     * 1. 列表页
     * 2. 单页/内容页
     */
    private Integer pageType;

    /**
     * 1. HTML
     * 2. JSON
     * 3. XML
     */
    private Integer pageContentType;

    /**
     * 渲染配置
     */
    private RenderConfig renderConfig;

    /**
     * 所有字段规则
     */
    private List<FieldRule> fieldRules;
}
